In conventional systems, a number of electronic devices can be controlled using a Speech-Enabled Application (“SEA”) which is executed using a computer. In addition, a plurality of SEAs may exist in a particular electronic device (e.g., a Consumer Electronic (“CE”) device such as a stereo system and a television set). Each command of the electronic device has a corresponding plurality of sound commands grouped together in a speech menu. A user, after activating a particular SEA device, issues a sound command (i.e., a word, phrase or tone). SEA matches the sound command to a corresponding execution command. Such matching is performed using tables or databases of SEA where the sound command and the execution command are stored. Then, the execution command is sent to a processor of the electronic device for execution.
There are several standards for constructing the speech menu of SEA. For example, Microsoft® Speech API (“Application Program Interface” or “SAPI”) (Microsoft Corporation, Redmond, Wash.) and Novel® Speech Recognition API (“SRAPI”) (Novel Corporation, Ottawa, Canada) are two common standards for constructing the speech menu.
Conventionally, the speech menus are professionally created by independent software vendors (“ISVs”) and they are typically static (i.e., they cannot be adjusted by the user; only the ISVs can modify them). A problem arises when the user is attempting to use simultaneously a number of SEAs that have different associated speech menus (e.g., these speech menus are not inter-operable). A conflict may arise between SEAs attempting to share different speech menus. This problem occurs due to the nature of SEA and the speech menu, and their ability to distinguish one word, phrase or tone accurately from another. Thus, there is a need for improved inter-operability between different SEAs.